package l.l.w.practice.疯狂队列;

import java.util.Arrays;
import java.util.LinkedList;
import java.util.Scanner;

/**
 * Created by llw on 2017/10/9.
 */
public class 疯狂队列 {

    public int crazy(int[] nums){
        LinkedList<Integer> list = new LinkedList<>();
        int n = nums.length;
        Arrays.sort(nums);
        list.add(nums[0]);
        int i=1,j=n-1;
        boolean flag = true;
        while(list.size() < n-2){
            if(flag){
                list.add(nums[j--]);
                list.addFirst(nums[j--]);
                flag = false;
            }else{
                list.add(nums[i++]);
                list.addFirst(nums[i++]);
                flag = true;
            }
        }
        if(list.size() == n-2){
            if(flag)
                list.add(nums[j--]);
            else
                list.add(nums[i++]);
        }
        int sum = 0;
        for(int k =1; k < list.size(); ++k){
            sum += Math.abs(list.get(k-1)-list.get(k));
        }
        sum += Math.max(Math.abs(nums[i]-list.getLast()),Math.abs(nums[i]-list.getFirst()));
        return sum;
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        int[] nums = new int[n];
        for(int i = 0; i < n; ++i){
            nums[i] = scanner.nextInt();
        }
        int result = new 疯狂队列().crazy(nums);
        System.out.println(result);
    }

}
//    public int crazy(int[] nums){
//        int n = nums.length;
//        int sum = 0;
//        LinkedList<Integer> list = new LinkedList<>();
//        for(int i = 0; i < n-1; ++i){
//            int index = 0;
//            if((i&1)==0){
//                int max = nums[i];
//                for(int j = i+1; j < n; ++j){
//                    if(max <= nums[j]){
//                        max = nums[j];
//                        index = j;
//                    }
//                }
//                list.add(max);
//                int temp = nums[i];
//                nums[i] = max;
//                nums[index] = temp;
//            }else{
//                int min = nums[i];
//                for(int j = i+1; j < n; ++j){
//                    if(min >= nums[j]){
//                        min = nums[j];
//                        index = j;
//                    }
//                }
//                list.add(min);
//                int temp = nums[i];
//                nums[i] = min;
//                nums[index] = temp;
//            }
//        }
//        for(int i =1; i < list.size(); ++i){
//            sum += Math.abs(list.get(i-1)-list.get(i));
//        }
//        sum += Math.max(Math.abs(nums[n-1]-list.getLast()),Math.abs(nums[n-1]-list.getFirst()));
//        return sum;
//    }